<?php
header( 'Content-Type:application/json; charset=utf-8' );
session_start();
$input = file_get_contents( 'php://input' );
$arr = json_decode( $input, true );
//转化为普通数据
$id = $arr[ 'id' ] ?? '';
$pwd = $arr[ 'pwd' ] ?? '';

$sql = "SELECT tch_id,tch_name FROM zyh_teacher WHERE tch_id = '" . $id . "' AND tch_pwd = '" . $pwd . "'";

$dbms = 'mysql';
//数据库类型
$host = '127.0.0.1';
//数据库主机名
$dbName = 'g09short';
//使用的数据库
$user = 'root';
//数据库连接用户名
$pass = 'G09short.';
//对应的密码
$dsn = "$dbms:host=$host;dbname=$dbName";

try {
    $dbh = new PDO( $dsn, $user, $pass );
    //初始化一个PDO对象
    $stmt = $dbh->query( $sql, PDO::FETCH_ASSOC );

    if ( $stmt && $stmt->rowCount() ) {
        //判断结果集对象是否存在, 并且结果集数量是否大于0, 也就是说是否存在数据

        //rowCount()是结果集中的一个方法，可以返回当前结果集中的记录条数

        $stmt->setFetchMode( PDO::FETCH_ASSOC );
        //设置结果集的读取方式，这里用的是关联的方式进行读取

        $row = $stmt->fetch();
        //获取记录

        $result = [
            'code' => '200',
            'msg' => '登录成功！',
            'data' => $row
        ];
        //验证用户名和密码成功后, session记录
        $_SESSION[ 'userinfo' ] = [
            'uid' => $id,
        ];

    } else {
        $result = [
            'code' => '417',
            'msg' => '账号或密码错误',
        ];
    }

    $dbh = null;

    echo json_encode( $result );
} catch ( PDOException $e ) {
    $result = [
        'code' => '404',
        'msg' => '$e->getMessage()',
    ];
    die( $result );
}
?>